/**
 * Copyright(c)2013 Beijing PeaceMap Co.,Ltd.
 * All right reserved. 
 */
package com.pmc.dwa.common.utils.handler;

import java.io.File;

import com.pmc.dwa.common.exception.PmcRuntimeException;


/**
 * @description 图片的处理【缩放、剪裁、旋转】
 * @author aokunsang
 * @date 2013-3-19
 */
public interface ImageHandler {
	
	/**
	 * 图像缩放
	 * @param src    源文件
	 * @param dest   目标文件
	 * @param w      缩放宽度
	 * @param h      缩放高度
	 * @throws EboxRuntimeException
	 */
	public byte[] scale(File src,int w,int h) throws PmcRuntimeException;
	
	/**
	 * 对图片剪裁
	 * @param src    源文件
	 * @param dest   目标文件
	 * @param left   剪裁部分的左上角x轴
	 * @param top    剪裁部分的右上角y轴
	 * @param width  剪裁部分的宽度
	 * @param height 剪裁部分的高度
	 * @param w      目标大小的宽度
	 * @param h      目标大小的高度
	 * @throws EboxRuntimeException
	 */
	public void crop(File src,File dest,int left,int top,int width,int height,int w,int h) throws PmcRuntimeException;

	/**
	 * 图片旋转
	 * @param src      源文件
	 * @param dest     目标文件
	 * @param degrees  旋转度数
	 * @throws EboxRuntimeException
	 */
	public void rotate(File src,File dest,double degrees) throws PmcRuntimeException;
}
